<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:p="http://primefaces.org/ui">

    <f:view contentType="text/html">
        <h:head>
            <f:facet name="first">
                <meta content='text/html; charset=UTF-8' http-equiv="Content-Type"/>
                <title>Crew Intranet: JMS</title>
            </f:facet>
        </h:head> 

        <h:body>
            <ui:composition template="./template.xhtml">
                <ui:define name="top">

                </ui:define>
                <ui:define name="left">
                    <h:form >
                        <p:menu my="true" style="width:200px">
                            <p:submenu label="Tableau de bord" >  
                                <p:menuitem value="Radio opérateur" action="#{redirectionBean.getRedirectionRadioOperateurJMS}" icon="ui-icon-gear"
                                            styleClass="#{
                                            view.viewId == '/radiooperateurJms.xhtml'
                                                ? 'ui-state-active menuItemSelectionner' : ''}"
                                            />  

                            </p:submenu>
                            <p:submenu label="Affectation">  
                                <p:menuitem value="Gestion des affectations" action="#{redirectionBean.getRedirectionAffectationsJMS}" icon="ui-icon-suitcase" 
                                            styleClass="#{
                                            view.viewId == '/affectationsJms.xhtml'
                                                ? 'ui-state-active menuItemSelectionner' : ''}"/>   
                            </p:submenu>  
                            <p:submenu label="Besoins">  
                                <p:menuitem value="Gestion des besoins" action="#{redirectionBean.getRedirectionBesoinsJMS}" icon="ui-icon-star"
                                            styleClass="#{
                                            view.viewId == '/besoinsJms.xhtml'
                                                ? 'ui-state-active menuItemSelectionner' : ''}"
                                            />  
                            </p:submenu>  
                        </p:menu>
                    </h:form>
                </ui:define>
                <ui:define name="content">
                    <h:form id="formMessage">
                        <p:growl id="message" />
                    </h:form>
                    <h:form id="formeListBesoin">
                        <p:panel header="Employé" style="width: 95%">
                            <f:facet name="header">
                                Gestion des Besoins

                                <p:commandButton id="recyclebesoin" 
                                                 style="float: right;" value="Recycler les besoins de la veuille" icon="ui-icon-arrowrefresh-1-n"
                                                 action="#{affectationBean.reciclageBesoinDeLaVeuille}"
                                                 update=":formDialogEditer:formRecyclageNouveauBesoins" oncomplete="RecyclagenouveauBesoinsDialog.show()"
                                                 >
                                </p:commandButton>

                                <p:commandButton id="viewDetailTravailleur" 
                                                 style="float: right;" value="Créer un besoin" icon="ui-icon-pencil"
                                                 immediate="true"
                                                 update=":formDialogEditer2:formNouveauBesoins" oncomplete="nouveauBesoinsDialog.show()"
                                                 >
                                </p:commandButton>
                            </f:facet>

                            <p:dataTable var="besoins" value="#{affectationBean.listCvListebesoinsNonAffecterDuJour2}"
                                         paginator="true" rows="10"
                                         rowsPerPageTemplate="5,10,15"
                                         widgetVar="besoinsTable"
                                         id="tableListeBesoin"
                                         >  
                                <f:facet name="header">  
                                    Liste des besoins du jours
                                </f:facet>  
                                <p:column headerText="Departement" sortBy="#{besoins.equipe.iddepartement.nomdepartement}" filterBy="#{besoins.equipe.iddepartement.nomdepartement}">  
                                    <h:outputText value="#{besoins.equipe.iddepartement.nomdepartement}" />  
                                </p:column>  

                                <p:column headerText="Equipe" filterBy="#{besoins.equipe.equipe}">  
                                    <h:outputText value="#{besoins.equipe.equipe}" />  
                                </p:column>  

                                <p:column headerText="Commentaire"> 

                                    <h:outputText value="#{besoins.commentaire}" />  

                                </p:column>  

                                <p:column headerText="Date">  
                                    <h:outputText value="#{besoins.date}"  >
                                        <f:convertDateTime pattern="dd/MM/yyyy" />
                                    </h:outputText>
                                </p:column>  
                            </p:dataTable> 
                            <p:separator id="customSeparator" style="width:100%;height:10px" />  
                            <p:dataTable var="besoins" value="#{affectationBean.historiqueDesBesoins}"
                                         paginator="true" rows="10"
                                         rowsPerPageTemplate="5,10,15"
                                         rowKey="#{besoins.idbesoin}"  
                                         selection="#{affectationBean.cvListebesoinHistoriqueSelection}"
                                         selectionMode="single"
                                         >  
                                <f:facet name="header">  
                                    Historique des besoins 
                                </f:facet>  
                                <p:column headerText="Departement" filterBy="#{besoins.equipe.iddepartement.nomdepartement}">  
                                    <h:outputText value="#{besoins.equipe.iddepartement.nomdepartement}" />  
                                </p:column>  

                                <p:column headerText="Equipe" filterBy="#{besoins.equipe.equipe}">  
                                    <h:outputText value="#{besoins.equipe.equipe}" />  
                                </p:column>  

                                <p:column headerText="Commentaire">  
                                    <h:outputText value="#{besoins.commentaire}" />  
                                </p:column>  

                                <p:column headerText="Date" sortBy="#{besoins.date}">  
                                    <h:outputText value="#{besoins.date}"  >
                                        <f:convertDateTime pattern="dd/MM/yyyy" />
                                    </h:outputText>
                                </p:column> 
                            </p:dataTable>
                        </p:panel>
                    </h:form>
                    <h:form id="formDialogEditer">
                        <p:dialog header="Recyclage des besoins de la veuille" widgetVar="RecyclagenouveauBesoinsDialog" resizable="false" id="RecyclagenouveauBesoinsDialogId"  
                                  hideEffect="explode" showEffect="slide" >  
                            <h:form id="formRecyclageNouveauBesoins">

                                <p:dataTable id="multiBesoins" var="besoinsVeille" 
                                             value="#{affectationBean.besoinsDataModel}" 
                                             paginator="true" rows="10"
                                             rowKey ="#{besoinsVeille.idbesoin}"
                                             selection="#{affectationBean.selectedBoins}">   
                                    <p:column selectionMode="multiple" />   

                                    <p:column headerText="Departement" >  
                                        <h:outputText value="#{besoinsVeille.equipe.iddepartement.nomdepartement}" />  
                                    </p:column>  

                                    <p:column headerText="Equipe" >  
                                        <h:outputText value="#{besoinsVeille.equipe.equipe}" />  
                                    </p:column>  

                                    <p:column headerText="Commentaire" >  
                                        <h:outputText value="#{besoinsVeille.commentaire}" />  
                                    </p:column>  
                                    <p:column headerText="Si déjà recyclé" >  
                                        <h:outputText value="#{besoinsVeille.recycle == true ? 'Oui' : 'Non'}" styleClass="#{besoinsVeille.recycle == true ? 'rouge':'verte'}" />
                                        
                                    </p:column>  


                                    <f:facet name="footer">  
                                        <p:commandButton id="multiViewButton"
                                                         action="#{affectationBean.validerRecyclageBesoins}"
                                                         value="Valider le recyclage" icon="ui-icon-check"
                                                         update=":formDialogEditer:formRecyclageNouveauBesoins, :formeListBesoin:tableListeBesoin, :formMessage:message"
                                                         oncomplete="handleRecycleNouvelleBesoinsRequest(xhr, status, args)"
                                                         />  
                                    </f:facet>  
                                </p:dataTable>

                            </h:form>

                        </p:dialog>
                    </h:form>
                    <h:form id="formDialogEditer2">
                        <p:dialog header="Créer un besoin" widgetVar="nouveauBesoinsDialog" resizable="false" id="nouveauBesoinsDialogId"  
                                  hideEffect="explode" showEffect="slide" >  
                            <h:form id="formNouveauBesoins">
                                <h:panelGrid columns="2">
                                    <p:outputLabel value="Mission :" for="mission" />
                                    <p:selectOneMenu id="mission" style="width:200px" required="true" value="#{travailleurBean.cvMission}" converter="missionConverter">  
                                        <f:selectItem itemLabel="Selectionne mission" itemValue="" />  
                                        <f:selectItems value="#{travailleurBean.listeMission}" var="mission" itemLabel="#{mission.idmission}" itemValue="#{mission}"/>  
                                        <p:ajax update="departement, equipe"  
                                                listener="#{travailleurBean.handleMissionChange}" />  
                                    </p:selectOneMenu>  

                                    <p:outputLabel value="Departement :" for="departement" />
                                    <p:selectOneMenu id="departement" style="width:200px" required="true" value="#{travailleurBean.cvListedepartement}" converter="departementConverter">  
                                        <f:selectItem itemLabel="Selectionner departement" itemValue="" />  
                                        <f:selectItems value="#{travailleurBean.departementListeHand}" var="departement" itemLabel="#{departement.nomdepartement}" itemValue="#{departement}" />  
                                        <p:ajax update="equipe"  
                                                listener="#{travailleurBean.handleDepartementChange}" />
                                    </p:selectOneMenu> 

                                    <p:outputLabel value="Equipe :" for="equipe" />
                                    <p:selectOneMenu id="equipe" style="width:200px" required="true" value="#{travailleurBean.cvEquipedepartement}" converter="equipeConverter">  
                                        <f:selectItem itemLabel="Selectionner departement" itemValue="" />  
                                        <f:selectItems value="#{travailleurBean.equipeListeHand}" var="equipe" itemLabel="#{equipe.equipe}" itemValue="#{equipe}" />  
                                    </p:selectOneMenu> 
                                    <p:outputLabel value="Date :" for="dateBesoins" />
                                    <p:calendar id="dateBesoins" value="#{affectationBean.cvListebesoinNew.date}" 
                                                pattern="dd/MM/yyyy"/>

                                    <p:outputLabel value="Commentaire :" for="commentaire" />
                                    <p:inputTextarea id="commentaire" value="#{affectationBean.cvListebesoinNew.commentaire}" required="true" />
                                    <h:outputText />
                                    <p:commandButton value="Valider le besoin" icon="ui-icon-check"
                                                     action="#{affectationBean.validerBesoins}"
                                                     update=":formDialogEditer2:formNouveauBesoins, :formeListBesoin:tableListeBesoin, :formMessage:message"
                                                     oncomplete="handleCreerNouvelleBesoinsRequest(xhr, status, args)"
                                                     >
                                        <f:setPropertyActionListener value="#{travailleurBean.cvEquipedepartement}" target="#{affectationBean.cvListebesoinNew.equipe}"/>
                                    </p:commandButton>
                                </h:panelGrid>
                            </h:form>

                        </p:dialog>
                    </h:form>
                    <script type="text/javascript">
                        function handleCreerNouvelleBesoinsRequest(xhr, status, args) {
                            if (args.validationFailed || !args.status) {
                                //alert(args.message);
                            } else {
                                nouveauBesoinsDialog.hide();

                            }
                        }
                        function handleRecycleNouvelleBesoinsRequest(xhr, status, args) {
                            if (args.validationFailed || !args.status) {
                                //alert(args.message);
                            } else {
                                RecyclagenouveauBesoinsDialog.hide();

                            }
                        }
                    </script>
                </ui:define>
            </ui:composition>
        </h:body>

    </f:view>
</html>

